
use serde::{Serialize, Deserialize};

#[derive(Debug, Deserialize, Serialize)]
pub struct ProcessInstance {
    pub id: String,
    pub process_definition_id: String,
    pub status: ProcessStatus,
    pub current_activity_ids: Vec<String>,
    pub variables: HashMap<String, serde_json::Value>,
    pub start_time: String,
    pub end_time: Option<String>,
}

#[derive(Debug, Deserialize, Serialize)]
pub enum ProcessStatus {
    Active,
    Completed,
    Terminated,
}